package 代码记录.指定公司代码练习记录.西安.分值200分.分支200分未做;

import java.util.HashMap;
import java.util.Scanner;

/**
 * @author zx
 * @create 2023-07-11 20:53
 */
public class WeAreATeam {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int flag = 0; // 团队编号
            HashMap<Integer, Integer> map = new HashMap<>(); // 记录每个人所属的团队
            int n = sc.nextInt(); // 人数
            int m = sc.nextInt(); // 消息
            if (n < 1 || n > 100000 || m < 1 || m > 100000) {
                System.out.println("NULL");
                break;
            }
            while (m > 0) {
                m--;
                int a = sc.nextInt();
                int b = sc.nextInt();
                int k = sc.nextInt();
                if (a < 1 || a > n || b < 1 || b > n) {
                    System.out.println("da pian zi");
                    continue;
                }
                if (k == 0) { // 分三种情况，1、都没有团队 2、有一个人有团队 3、都有团队
                    if (!map.containsKey(a) && !map.containsKey(b)) {
                        flag++;
                        map.put(a, flag);
                        map.put(b, flag);
                    }else if (map.containsKey(a) && map.containsKey(b)) {
                        flag++;
                        if (map.get(a) != map.get(b)) {
                            merge(map, map.get(a), map.get(b), flag);
                        }
                    } else if (map.containsKey(a)) {
                        map.put(b, map.get(a));
                    } else if (map.containsKey(b)) {
                        map.put(a, map.get(b));
                    }
                } else if (k == 1) { // 只有map有数据才能确定两人是否同一个团队的
                    if (map.containsKey(a) && map.containsKey(b)) {
                        if (map.get(a) == map.get(b)) {
                            System.out.println("we are a team");
                        } else {
                            System.out.println("we are not a team");
                        }
                    } else { // 不确定的事情为啥也要输出？有可能是一个团队
                        System.out.println("we are not a team");
                    }
                } else {
                    System.out.println("da pian zi");
                }
            }
        }
    }
    private static void merge(HashMap<Integer, Integer> map, int n, int m, int flag) {
        for (Integer key : map.keySet()) {
            if (map.get(key) == n || (map.get(key) == m)) {
                map.put(key, flag);
            }
        }
    }
}
